vtd: Various cleanups and fixes:
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 30 May 2008 14:06:08 +0000 (15:06 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 30 May 2008 14:06:08 +0000 (15:06 +0100)
commit4a133deb6e523fb7e23d293ac0f7f2cfa36bf9a4
treee652521587f9b9a1e26dc74219508c171da04dfd
parentcedcb04c7d504cf4d0df979d69d6ab34d63ced34
vtd: Various cleanups and fixes:
 * Handle DRHDs with different supported AGAWs. To support this we
   create page tables which always have 4 levels, and skip top levels
   for units which support only 2 or 3 levels.
 * Handle systems with mixed DRHD support for cache snooping. We must
   pessimistically CLFLUSH if any DRHD does not support snooping.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/drivers/passthrough/vtd/iommu.c
xen/drivers/passthrough/vtd/iommu.h
xen/drivers/passthrough/vtd/vtd.h
xen/drivers/passthrough/vtd/x86/vtd.c
xen/include/xen/iommu.h